package com.usian.apis.wemedia;

import com.usian.model.common.dtos.ResponseResult;
import com.usian.model.media.dtos.WmNewsDto;
import com.usian.model.media.dtos.WmNewsPageReqDto;
import com.usian.model.media.pojos.WmNews;

import java.util.List;

/**
 * ClassName: WmNewControllerApi
 * Author:   WGG
 * Date:    2022-11-2022/11/17-11:53
 * Version: 1.0
 * Description:
 */
public interface WmNewsControllerApi {

    /**
     * 文章分页查询
     * @param dto
     * @return
     */
    ResponseResult list(WmNewsPageReqDto dto);

    /**
     * 内容信息添加
     * @param dto
     * @return
     */
    ResponseResult submit(WmNewsDto dto);

    /**
     * 根据id查询
     * @param id
     * @return
     */
    ResponseResult one(Integer id);


    /**
     * 根据id查询  @GetMapping("/wemedia/api/v1/news/getOne/{id}")
     *     public WmNews getOne(@PathVariable Integer id);
     * @param id
     * @return
     */
    WmNews getOneWmNews(Integer id);

    /**
     * 根据id删除
     * @param id
     * @return
     */
    ResponseResult delNews(Integer id);

    /**
     * 上架，下架
     * @param wmNews
     * @return
     */
    ResponseResult downOrUp(WmNews wmNews);

    /**
     * 媒体内容分页查询
     * @param wmNewsDto
     * @return
     */
    ResponseResult listWmNews(WmNewsDto wmNewsDto);


    /**
     * 修改状态和审核信息
     * @param wmNews
     * @return
     */
    ResponseResult updateStatusAndReason(WmNews wmNews);

    /**
     * 查询状态等于8的时间小于当前时间的
     * @return
     */
    List<Integer> findIds();

    /**
     * 查询状态等于4的
     * @return
     */
    List<Integer> findByStatusIds();
}
